// //辨析static修饰的变量和区局变量的区别

// #include<iostream>
// using namespace std;

// int globalVar = 1;
// static int staticGlobalVar = 1;
// void Test()
// {
// static int staticVar = 1;//存放在静态区，也就是数据段 
// int localVar = 1;
// int num1[10] = { 1, 2, 3, 4 };
// char char2[] = "abcd";
// const char* pChar3 = "abcd";
// int* ptr1 = (int*)malloc(sizeof(int) * 4);
// int* ptr2 = (int*)calloc(4, sizeof(int));
// int* ptr3 = (int*)realloc(ptr2, sizeof(int) * 4);
// free(ptr1);
// free(ptr3);
// }

// // 如果变量需要跨文件共享 → 全局变量 globalVar（配合 extern）。

// // 如果变量仅当前文件使用 → 静态全局变量 staticGlobalVar（避免命名冲突）。

// // 如果变量需要在函数调用间保持状态 → 静态局部变量 staticVar。
// //相比与普通的局部变量
// //1.生命周期边长
// //2.未初始化，自动初始化为0
// //3.

// void func() {
//     static int staticVar = 0;  // 只初始化一次
//     staticVar++;
//     printf("%d\n", staticVar);  // 每次调用递增：1, 2, 3, ...
// }
// int main()
// {

// }